package com.cleaningcloud.cld.service;

import java.util.List;
import com.cleaningcloud.cld.domain.CldInvoiceDeduction;

/**
 * 发票扣款Service接口
 * 
 * @author cleaningcloud
 * @date 2025-04-26
 */
public interface ICldInvoiceDeductionService 
{
    /**
     * 查询发票扣款
     * 
     * @param invoiceDeductionId 发票扣款主键
     * @return 发票扣款
     */
    public CldInvoiceDeduction selectCldInvoiceDeductionByInvoiceDeductionId(Long invoiceDeductionId);

    /**
     * 查询发票扣款列表
     * 
     * @param cldInvoiceDeduction 发票扣款
     * @return 发票扣款集合
     */
    public List<CldInvoiceDeduction> selectCldInvoiceDeductionList(CldInvoiceDeduction cldInvoiceDeduction);

    /**
     * 新增发票扣款
     * 
     * @param cldInvoiceDeduction 发票扣款
     * @return 结果
     */
    public int insertCldInvoiceDeduction(CldInvoiceDeduction cldInvoiceDeduction);

    /**
     * 修改发票扣款
     * 
     * @param cldInvoiceDeduction 发票扣款
     * @return 结果
     */
    public int updateCldInvoiceDeduction(CldInvoiceDeduction cldInvoiceDeduction);

    /**
     * 批量删除发票扣款
     * 
     * @param invoiceDeductionIds 需要删除的发票扣款主键集合
     * @return 结果
     */
    public int deleteCldInvoiceDeductionByInvoiceDeductionIds(Long[] invoiceDeductionIds);

    /**
     * 删除发票扣款信息
     * 
     * @param invoiceDeductionId 发票扣款主键
     * @return 结果
     */
    public int deleteCldInvoiceDeductionByInvoiceDeductionId(Long invoiceDeductionId);
}
